#!/bin/bash

cd ..

# 强制拉取最新，覆盖本地
git pull --force

# 设置代理
go env -w GO111MODULE=on
go env -w GOPROXY=https://goproxy.cn,direct

# 安装依赖
go mod tidy

# 安装 swaggo
go install -v github.com/swaggo/swag/cmd/swag@latest
swag -v
swag init

# 设置应用名称
app_name="user-api"

# 编译
go build -o ./$app_name ./main.go

# 重启，如果服务已经启动则关闭重启
chmod +x ./$app_name
if pgrep -x $app_name > /dev/null
then
  echo "${app_name} is running"
  echo "shutting down ${app_name}"
  if ps -A | grep $app_name | awk '{print $1}' | xargs kill $1
    then
      echo "starting ${app_name}"
      ./$app_name > /dev/null 2>&1 &
      echo "start ${app_name} success"
  fi
else
# 直接启动
  echo "starting ${app_name}"
  ./$app_name > /dev/null 2>&1 &
  echo "start ${app_name} success"
fi